#pragma once

#include <MCF/Code/StdMCF.hpp>
#include <MCF/Code/ProgressBarClass.hpp>

class AsyncWriteProgressBarClass : public MCF::ProgressBarClass {
private:
	enum : UINT {
		_MSG_UPDATEPROGRESS = WM_USER + 0x1000,
		_MSG_UPDATEMARQUEE
	};
public:
	AsyncWriteProgressBarClass();
	~AsyncWriteProgressBarClass();
protected:
	virtual LRESULT _OnMessage(UINT uMsg, WPARAM wParam, LPARAM lParam) override;
public:
	void SetProgress(WORD wNewProgress);
	void SetMarquee(bool bToSet, unsigned int uInterval = 25);
};
